<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  xmlns:ed="livcos.org/ns/editor"
  exclude-result-prefixes="ed">
  
  <xsl:import href="style/SimpleId.xsl" />
  
  <xsl:param name="objId"/>
  <xsl:param name="scope" select="'content'"/>
  <xsl:param name="id"/>
  
  <xsl:template match="@* | node()">
    <xsl:copy>
      <xsl:apply-templates select="@* | node()"/>
    </xsl:copy>
  </xsl:template>
  
  <xsl:template match="*[@id]">
  </xsl:template>
  
  <xsl:template match="/">
    <xsl:call-template name="applyNode">
      <xsl:with-param name="parentNode" select="document(concat($objId,'.',$scope))"/>
      <xsl:with-param name="id" select="$id"/>
    </xsl:call-template>
  </xsl:template>
  
  <xsl:template name="applyNode_fallback">
    <error msg="No data found!" />
  </xsl:template>

	<xsl:template match="node()|@*" mode="applyNode">
	  <xsl:if test="position() = 1">
			<entity type="{namespace-uri(.)}/{local-name(.)}"
							objId="{$objId}" scope="{$scope}" id="{$id}">
  	    <xsl:copy>
  	      <xsl:apply-templates select="@* | node()"/>
  	    </xsl:copy>
			</entity>
	  </xsl:if>
	</xsl:template>
	
</xsl:stylesheet>
